package com.cetc.ga;

import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
import org.apache.catalina.connector.Connector;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.web.HttpMessageConverters;
import org.springframework.boot.context.embedded.EmbeddedServletContainerFactory;
import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.http.converter.HttpMessageConverter;

/**
 * Application.java 建议放到根目录下面,主要用于做一些框架配置
 * 主程序,一个带有main()方法的类，用于启动应用程序（关键）。
 *
 * 编程步骤：
 * 1. 先添加配置文件
 * 2. 并添加config包，以及加载外部配置文件的JpaConfig
 * 3. 之后是添加domain.entity包，并添加各种实体类，UserEntity
 * 4. 之后添加domain.repository包，并添加对应实体类的相应与数据访问层的接口，UserRepository
 * 5. 之后添加service包，并添加各实体类对应的业务接口，UserService
 * 6. 并添加service.impl包，并添加各业务接口的实现类，UserServiceImpl
 * 7. 最后添加controller包，并添加相应的页面控制访问类，UserController （如果不需要接口或者页面展示，就不需要该步骤）
 * 用测试类测试
 */
@SpringBootApplication
//@EnableConfigurationProperties({ConfigBean.class})
public class Application {
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

    /**
     * 配置FastJson方式二
     * @return  HttpMessageConverters
     */
    /**
	@Bean//使用@Bean注入fastJsonHttpMessageConvert
	public HttpMessageConverters fastJsonHttpMessageConverters(){
		//1.需要定义一个Convert转换消息的对象
		FastJsonHttpMessageConverter fastConverter=new FastJsonHttpMessageConverter();
		//2.添加fastjson的配置信息，比如是否要格式化返回的json数据
		FastJsonConfig fastJsonConfig=new FastJsonConfig();
		fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
		//3.在convert中添加配置信息
		fastConverter.setFastJsonConfig(fastJsonConfig);

		HttpMessageConverter<?> converter=fastConverter;
		return new HttpMessageConverters(converter);
	}
    **/

}
